package ar.republicagroup.gestion.services.impl;
import ar.republicagroup.gestion.dao.CuentaBancoDAO;
import ar.republicagroup.gestion.entities.Cheque;
import ar.republicagroup.gestion.entities.CuentaBanco;
import ar.republicagroup.gestion.services.CuentaBancoServices;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import javax.swing.DefaultComboBoxModel;

public class CuentaBancoServicesImpl implements CuentaBancoServices{

   CuentaBancoDAO cuentaBancoDao;

    public void setCuentaBancoDao(CuentaBancoDAO cuentaBancoDao) {
        this.cuentaBancoDao = cuentaBancoDao;
    }

    
    @Override
    public List<CuentaBanco> findEntities() {
       return cuentaBancoDao.findEntities();
    }

    @Override
    public String insert(CuentaBanco beanCuentaBanco) {
        return cuentaBancoDao.insert(beanCuentaBanco);
    }

    @Override
    public String update(CuentaBanco beanCuentaBanco) {
        return cuentaBancoDao.update(beanCuentaBanco);
    }

    @Override
    public CuentaBanco get(Integer id_cuentabanco) {
       return cuentaBancoDao.get(id_cuentabanco);
    }

    @Override
    public String delete(Integer id_cuentabanco) {
       return cuentaBancoDao.delete(id_cuentabanco);
    }

    @Override
    public DefaultComboBoxModel combo() {
        return cuentaBancoDao.combo();
    }

    @Override
    public Map<CuentaBanco, Object> getTotalesPorCuenta() {
       return cuentaBancoDao.getTotalesPorCuenta();
    }

    @Override
    public List<Cheque> assignCuentaBancoToThisCheques(List<Cheque> chequeList,CuentaBanco cuentaBancaria) {
        
        List<Cheque> chequesUpdatedList = new ArrayList<>();
        
        for(Cheque cheque : chequeList){
               cheque.setCuentaBancoId(cuentaBancaria);
               chequesUpdatedList.add(cheque);
        }
        
        return chequesUpdatedList;
    }
    
    
}
